package scala

object Demo2Base {
  def main(args: Array[String]): Unit = {

    /**
      * 语法基础
      *
      */

    // 变量

    // 类型推断，自动根据等号右边推断变量的类型
    var s = "1"


    //手动增加类型
    var i: Int = 1

    /**
      *
      * var ： 变量,可以在指向其它的对象
      * val  ： 常量， 不能再指向其它的对象
      *
      * 尽量使用val
      *
      */

    var j = 1
    j = 100

    val k = "asdasd"
    //k = 2


    /**
      * 字符串
      *
      * scala张的字符串和java中的字符串是一样的
      *
      */

    val str: String = "scala"

    str.split("<")
    str.substring(2)


    /**
      * 基本数据类型和java中也是一样的
      *
      */

    val ii: Int = 100


    /**
      *
      * scala类型转换
      *
      */

    val str1: String = "100"

    //java的方式
    Integer.parseInt(str1)

    //scala中进行类型转换
    //to 
    //对java的方式做了封装
    //toInt 是scala 于洋通过隐式转换动态增加的
    val int: Int = str1.toInt


    val str2: String = int.toString


    /**
      * if
      *
      */

    val age = 23
    if (age > 18) {
      println("成年")
    } else {
      println("未成年")
    }


    /**
      * 数组，相当于java中的数组
      *
      */

    val ints: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)


    /**
      * 循环
      *
      */

    for (i <- ints) {
      println(i)
    }


    println("=".*(100))


    println("=" * 100)

    /**
      * 通过下标循环
      *
      */

    var l = 0
    while (l < ints.length) {

      ///通过小括号取数
      println(ints(l))

      l += 1
    }


  }

}
